package com.oauth.service.application.dao;

import java.util.Collection;
import java.util.List;

import com.oauth.service.application.beans.ApplicationServiceBean;
import com.oauth.service.application.beans.MemberApplicationRelation;

public interface ApplicationDAO {
	public ApplicationServiceBean addNewApplication(
			ApplicationServiceBean pApplicationServiceBean);

	public MemberApplicationRelation addMemberToApplication(Long pMemberId,Long pApplicationId);
			
	public MemberApplicationRelation removeMemberToApplication(Long pMemberId,
			Long pApplicationId);

	public MemberApplicationRelation getMemberApplications(Long pMemberId);
	
	public ApplicationServiceBean getApplicationById(Long pApplicationId);

	public List<ApplicationServiceBean> getApplicationByIds(Collection<Long> pApplicationIds);
		
	public List<Long> getUnSubscribedApplications(Long pMemberId);
		
}
